(global.webpackJsonp = global.webpackJsonp || []).push([ [ "pagesA/common/vendor" ], {
    "01b2": function(e, t) {
        e.exports = {
            error: "",
            check: function(e, t) {
                e = JSON.stringify(e);
                for (var r = JSON.parse(e), i = 0; i < t.length; i++) {
                    if (!t[i].checkType) return !0;
                    if (!t[i].name) return !0;
                    if (!t[i].errorMsg) return !0;
                    if (!r[t[i].name] || "" == r[t[i].name]) return this.error = t[i].errorMsg, !1;
                    switch ("string" == typeof r[t[i].name] && (r[t[i].name] = r[t[i].name].replace(/\s/g, "")), 
                    t[i].checkType) {
                      case "string":
                        var s = new RegExp("^.{" + t[i].checkRule + "}$");
                        if (!s.test(r[t[i].name])) return this.error = t[i].errorMsg, !1;
                        break;

                      case "int":
                        var n = t[i].checkRule.split(",");
                        if (t.length < 2 ? (n[0] = Number(n[0]) - 1, n[1] = "") : (n[0] = Number(n[0]) - 1, 
                        n[1] = Number(n[1]) - 1), !(s = new RegExp("^(-[1-9]|[1-9])[0-9]{" + n[0] + "," + n[1] + "}$")).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "between":
                        if (!this.isNumber(r[t[i].name])) return this.error = t[i].errorMsg, !1;
                        var o = t[i].checkRule.split(",");
                        if (o[0] = Number(o[0]), o[1] = Number(o[1]), r[t[i].name] > o[1] || r[t[i].name] < o[0]) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "betweenD":
                        if (!(s = /^-?\d+$/).test(r[t[i].name])) return this.error = t[i].errorMsg, !1;
                        if ((o = t[i].checkRule.split(","))[0] = Number(o[0]), o[1] = Number(o[1]), r[t[i].name] > o[1] || r[t[i].name] < o[0]) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "betweenF":
                        if (!(s = /^-?[0-9][0-9]?.+[0-9]+$/).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        if ((o = t[i].checkRule.split(","))[0] = Number(o[0]), o[1] = Number(o[1]), r[t[i].name] > o[1] || r[t[i].name] < o[0]) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "same":
                        if (r[t[i].name] != t[i].checkRule) return this.error = t[i].errorMsg, !1;
                        break;

                      case "notsame":
                        if (r[t[i].name] == t[i].checkRule) return this.error = t[i].errorMsg, !1;
                        break;

                      case "email":
                        if (!(s = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "phoneno":
                        if (!(s = /^1[0-9]{10,10}$/).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "zipcode":
                        if (!(s = /^[0-9]{6}$/).test(r[t[i].name])) return this.error = t[i].errorMsg, !1;
                        break;

                      case "reg":
                        if (!(s = new RegExp(t[i].checkRule)).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "in":
                        if (-1 == t[i].checkRule.indexOf(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "notnull":
                        if (null == r[t[i].name] || r[t[i].name].length < 1) return this.error = t[i].errorMsg, 
                        !1;
                        break;

                      case "samewith":
                        if (r[t[i].name] != r[t[i].checkRule]) return this.error = t[i].errorMsg, !1;
                        break;

                      case "numbers":
                        if (!(s = new RegExp("^[0-9]{" + t[i].checkRule + "}$")).test(r[t[i].name])) return this.error = t[i].errorMsg, 
                        !1;
                    }
                }
                return !0;
            },
            isNumber: function(e) {
                return NaN != (e = Number(e));
            }
        };
    },
    "730d": function(e, t) {
        e.exports = {
            currentTime: function(e, t) {
                var r = new Date().getTime();
                return t && (r += t), e ? this.formatDateTime(r / 1e3, "str") : r;
            },
            formatDateTime: function(e, t) {
                e = parseInt(e);
                var r = new Date();
                e < 9e10 ? r.setTime(1e3 * e) : r.setTime(e);
                var i = r.getFullYear(), s = (s = r.getMonth() + 1) < 10 ? "0" + s : s, n = (n = r.getDate()) < 10 ? "0" + n : n, o = (o = r.getHours()) < 10 ? "0" + o : o, e = (e = r.getMinutes()) < 10 ? "0" + e : e, r = (r = r.getSeconds()) < 10 ? "0" + r : r;
                return "str" == t ? i + "-" + s + "-" + n + " " + o + ":" + e + ":" + r : [ i, s, n, o, e, r ];
            },
            dateTimeToTimeStamp: function(e) {
                var t = e.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})$/);
                if (null == t) {
                    var r = e.match(/^([0-9]{2})\/([0-9]{2})\/([0-9]{4}) ([0-9]{2}):([0-9]{2}):([0-9]{2})$/);
                    if (null == r) return console.log("时间格式错误 E001"), !1;
                    var i = parseInt(r[3]), s = parseInt(r[1]), n = parseInt(r[2]), o = parseInt(r[4]), a = parseInt(r[5]), r = parseInt(r[6]);
                } else i = parseInt(t[1]), s = parseInt(t[2]), n = parseInt(t[3]), o = parseInt(t[4]), 
                a = parseInt(t[5]), r = parseInt(t[6]);
                return i < 1e3 || o < 0 || 24 < o || a < 0 || 60 < a || r < 0 || 60 < r ? (console.log("时间格式错误"), 
                !1) : Date.parse(new Date(i, s - 1, n, o, a, r)) / 1e3;
            },
            fromTimer: function(e) {
                var t = new Date().getTime() - 1e3 * e;
                return (t = parseInt(t / 1e3)) < 180 ? "刚刚" : 180 <= t && t < 3600 ? parseInt(t / 60) + "分钟前" : 3600 <= t && t < 86400 ? parseInt(t / 3600) + "小时前" : 86400 <= t && t < 2592e3 ? parseInt(t / 86400) + "天前" : this.formatDateTime(e, "str");
            }
        };
    },
    a304: function(e, t) {
        function r(e, t) {
            for (var r = 0; r < t.length; r++) {
                var i = t[r];
                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), 
                Object.defineProperty(e, i.key, i);
            }
        }
        var i, s, n, o = 310, a = "请求参数信息有误", l = 600, c = "系统错误", u = 1e3, d = 200, g = "https://apis.map.qq.com/ws/", h = g + "place/v1/suggestion", f = g + "geocoder/v1/", m = "driving", p = "transit", y = {
            safeAdd: function(e, t) {
                var r = (65535 & e) + (65535 & t);
                return (e >> 16) + (t >> 16) + (r >> 16) << 16 | 65535 & r;
            },
            bitRotateLeft: function(e, t) {
                return e << t | e >>> 32 - t;
            },
            md5cmn: function(e, t, r, i, s, n) {
                return this.safeAdd(this.bitRotateLeft(this.safeAdd(this.safeAdd(t, e), this.safeAdd(i, n)), s), r);
            },
            md5ff: function(e, t, r, i, s, n, o) {
                return this.md5cmn(t & r | ~t & i, e, t, s, n, o);
            },
            md5gg: function(e, t, r, i, s, n, o) {
                return this.md5cmn(t & i | r & ~i, e, t, s, n, o);
            },
            md5hh: function(e, t, r, i, s, n, o) {
                return this.md5cmn(t ^ r ^ i, e, t, s, n, o);
            },
            md5ii: function(e, t, r, i, s, n, o) {
                return this.md5cmn(r ^ (t | ~i), e, t, s, n, o);
            },
            binlMD5: function(e, t) {
                var r, i, s, n;
                e[t >> 5] |= 128 << t % 32, e[14 + (t + 64 >>> 9 << 4)] = t;
                for (var o = 1732584193, a = -271733879, l = -1732584194, c = 271733878, u = 0; u < e.length; u += 16) r = o, 
                i = a, s = l, n = c, o = this.md5ff(o, a, l, c, e[u], 7, -680876936), c = this.md5ff(c, o, a, l, e[u + 1], 12, -389564586), 
                l = this.md5ff(l, c, o, a, e[u + 2], 17, 606105819), a = this.md5ff(a, l, c, o, e[u + 3], 22, -1044525330), 
                o = this.md5ff(o, a, l, c, e[u + 4], 7, -176418897), c = this.md5ff(c, o, a, l, e[u + 5], 12, 1200080426), 
                l = this.md5ff(l, c, o, a, e[u + 6], 17, -1473231341), a = this.md5ff(a, l, c, o, e[u + 7], 22, -45705983), 
                o = this.md5ff(o, a, l, c, e[u + 8], 7, 1770035416), c = this.md5ff(c, o, a, l, e[u + 9], 12, -1958414417), 
                l = this.md5ff(l, c, o, a, e[u + 10], 17, -42063), a = this.md5ff(a, l, c, o, e[u + 11], 22, -1990404162), 
                o = this.md5ff(o, a, l, c, e[u + 12], 7, 1804603682), c = this.md5ff(c, o, a, l, e[u + 13], 12, -40341101), 
                l = this.md5ff(l, c, o, a, e[u + 14], 17, -1502002290), a = this.md5ff(a, l, c, o, e[u + 15], 22, 1236535329), 
                o = this.md5gg(o, a, l, c, e[u + 1], 5, -165796510), c = this.md5gg(c, o, a, l, e[u + 6], 9, -1069501632), 
                l = this.md5gg(l, c, o, a, e[u + 11], 14, 643717713), a = this.md5gg(a, l, c, o, e[u], 20, -373897302), 
                o = this.md5gg(o, a, l, c, e[u + 5], 5, -701558691), c = this.md5gg(c, o, a, l, e[u + 10], 9, 38016083), 
                l = this.md5gg(l, c, o, a, e[u + 15], 14, -660478335), a = this.md5gg(a, l, c, o, e[u + 4], 20, -405537848), 
                o = this.md5gg(o, a, l, c, e[u + 9], 5, 568446438), c = this.md5gg(c, o, a, l, e[u + 14], 9, -1019803690), 
                l = this.md5gg(l, c, o, a, e[u + 3], 14, -187363961), a = this.md5gg(a, l, c, o, e[u + 8], 20, 1163531501), 
                o = this.md5gg(o, a, l, c, e[u + 13], 5, -1444681467), c = this.md5gg(c, o, a, l, e[u + 2], 9, -51403784), 
                l = this.md5gg(l, c, o, a, e[u + 7], 14, 1735328473), a = this.md5gg(a, l, c, o, e[u + 12], 20, -1926607734), 
                o = this.md5hh(o, a, l, c, e[u + 5], 4, -378558), c = this.md5hh(c, o, a, l, e[u + 8], 11, -2022574463), 
                l = this.md5hh(l, c, o, a, e[u + 11], 16, 1839030562), a = this.md5hh(a, l, c, o, e[u + 14], 23, -35309556), 
                o = this.md5hh(o, a, l, c, e[u + 1], 4, -1530992060), c = this.md5hh(c, o, a, l, e[u + 4], 11, 1272893353), 
                l = this.md5hh(l, c, o, a, e[u + 7], 16, -155497632), a = this.md5hh(a, l, c, o, e[u + 10], 23, -1094730640), 
                o = this.md5hh(o, a, l, c, e[u + 13], 4, 681279174), c = this.md5hh(c, o, a, l, e[u], 11, -358537222), 
                l = this.md5hh(l, c, o, a, e[u + 3], 16, -722521979), a = this.md5hh(a, l, c, o, e[u + 6], 23, 76029189), 
                o = this.md5hh(o, a, l, c, e[u + 9], 4, -640364487), c = this.md5hh(c, o, a, l, e[u + 12], 11, -421815835), 
                l = this.md5hh(l, c, o, a, e[u + 15], 16, 530742520), a = this.md5hh(a, l, c, o, e[u + 2], 23, -995338651), 
                o = this.md5ii(o, a, l, c, e[u], 6, -198630844), c = this.md5ii(c, o, a, l, e[u + 7], 10, 1126891415), 
                l = this.md5ii(l, c, o, a, e[u + 14], 15, -1416354905), a = this.md5ii(a, l, c, o, e[u + 5], 21, -57434055), 
                o = this.md5ii(o, a, l, c, e[u + 12], 6, 1700485571), c = this.md5ii(c, o, a, l, e[u + 3], 10, -1894986606), 
                l = this.md5ii(l, c, o, a, e[u + 10], 15, -1051523), a = this.md5ii(a, l, c, o, e[u + 1], 21, -2054922799), 
                o = this.md5ii(o, a, l, c, e[u + 8], 6, 1873313359), c = this.md5ii(c, o, a, l, e[u + 15], 10, -30611744), 
                l = this.md5ii(l, c, o, a, e[u + 6], 15, -1560198380), a = this.md5ii(a, l, c, o, e[u + 13], 21, 1309151649), 
                o = this.md5ii(o, a, l, c, e[u + 4], 6, -145523070), c = this.md5ii(c, o, a, l, e[u + 11], 10, -1120210379), 
                l = this.md5ii(l, c, o, a, e[u + 2], 15, 718787259), a = this.md5ii(a, l, c, o, e[u + 9], 21, -343485551), 
                o = this.safeAdd(o, r), a = this.safeAdd(a, i), l = this.safeAdd(l, s), c = this.safeAdd(c, n);
                return [ o, a, l, c ];
            },
            binl2rstr: function(e) {
                for (var t = "", r = 32 * e.length, i = 0; i < r; i += 8) t += String.fromCharCode(e[i >> 5] >>> i % 32 & 255);
                return t;
            },
            rstr2binl: function(e) {
                var t = [];
                for (t[(e.length >> 2) - 1] = void 0, i = 0; i < t.length; i += 1) t[i] = 0;
                for (var r = 8 * e.length, i = 0; i < r; i += 8) t[i >> 5] |= (255 & e.charCodeAt(i / 8)) << i % 32;
                return t;
            },
            rstrMD5: function(e) {
                return this.binl2rstr(this.binlMD5(this.rstr2binl(e), 8 * e.length));
            },
            rstrHMACMD5: function(e, t) {
                var r, i = this.rstr2binl(e), s = [], n = [];
                for (s[15] = n[15] = void 0, 16 < i.length && (i = this.binlMD5(i, 8 * e.length)), 
                r = 0; r < 16; r += 1) s[r] = 909522486 ^ i[r], n[r] = 1549556828 ^ i[r];
                return t = this.binlMD5(s.concat(this.rstr2binl(t)), 512 + 8 * t.length), this.binl2rstr(this.binlMD5(n.concat(t), 640));
            },
            rstr2hex: function(e) {
                for (var t, r = "0123456789abcdef", i = "", s = 0; s < e.length; s += 1) t = e.charCodeAt(s), 
                i += r.charAt(t >>> 4 & 15) + r.charAt(15 & t);
                return i;
            },
            str2rstrUTF8: function(e) {
                return unescape(encodeURIComponent(e));
            },
            rawMD5: function(e) {
                return this.rstrMD5(this.str2rstrUTF8(e));
            },
            hexMD5: function(e) {
                return this.rstr2hex(this.rawMD5(e));
            },
            rawHMACMD5: function(e, t) {
                return this.rstrHMACMD5(this.str2rstrUTF8(e), str2rstrUTF8(t));
            },
            hexHMACMD5: function(e, t) {
                return this.rstr2hex(this.rawHMACMD5(e, t));
            },
            md5: function(e, t, r) {
                return t ? r ? this.rawHMACMD5(t, e) : this.hexHMACMD5(t, e) : r ? this.rawMD5(e) : this.hexMD5(e);
            },
            getSig: function(t, e, r, i) {
                var s = null, n = [];
                return Object.keys(t).sort().forEach(function(e) {
                    n.push(e + "=" + t[e]);
                }), "search" == r && (s = "/ws/place/v1/search?" + n.join("&") + e), "suggest" == r && (s = "/ws/place/v1/suggestion?" + n.join("&") + e), 
                "reverseGeocoder" == r && (s = "/ws/geocoder/v1/?" + n.join("&") + e), "geocoder" == r && (s = "/ws/geocoder/v1/?" + n.join("&") + e), 
                "getCityList" == r && (s = "/ws/district/v1/list?" + n.join("&") + e), "getDistrictByCityId" == r && (s = "/ws/district/v1/getchildren?" + n.join("&") + e), 
                "calculateDistance" == r && (s = "/ws/distance/v1/?" + n.join("&") + e), "direction" == r && (s = "/ws/direction/v1/" + i + "?" + n.join("&") + e), 
                s = this.md5(s);
            },
            location2query: function(e) {
                if ("string" == typeof e) return e;
                for (var t = "", r = 0; r < e.length; r++) {
                    var i = e[r];
                    t && (t += ";"), i.location && (t = t + i.location.lat + "," + i.location.lng), 
                    i.latitude && i.longitude && (t = t + i.latitude + "," + i.longitude);
                }
                return t;
            },
            rad: function(e) {
                return e * Math.PI / 180;
            },
            getEndLocation: function(e) {
                for (var t = e.split(";"), r = [], i = 0; i < t.length; i++) r.push({
                    lat: parseFloat(t[i].split(",")[0]),
                    lng: parseFloat(t[i].split(",")[1])
                });
                return r;
            },
            getDistance: function(e, t, r, i) {
                var s = this.rad(e), e = this.rad(r), r = s - e, i = this.rad(t) - this.rad(i), i = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(r / 2), 2) + Math.cos(s) * Math.cos(e) * Math.pow(Math.sin(i / 2), 2)));
                return i *= 6378136.49, i = Math.round(1e4 * i) / 1e4, parseFloat(i.toFixed(0));
            },
            getWXLocation: function(e, t, r) {
                wx.getLocation({
                    type: "gcj02",
                    success: e,
                    fail: t,
                    complete: r
                });
            },
            getLocationParam: function(e) {
                return "string" == typeof e && (e = 2 === e.split(",").length ? {
                    latitude: e.split(",")[0],
                    longitude: e.split(",")[1]
                } : {}), e;
            },
            polyfillParam: function(e) {
                e.success = e.success || function() {}, e.fail = e.fail || function() {}, e.complete = e.complete || function() {};
            },
            checkParamKeyEmpty: function(e, t) {
                if (e[t]) return !1;
                t = this.buildErrorConfig(o, a + t + "参数格式有误");
                return e.fail(t), e.complete(t), !0;
            },
            checkKeyword: function(e) {
                return !this.checkParamKeyEmpty(e, "keyword");
            },
            checkLocation: function(e) {
                var t = this.getLocationParam(e.location);
                if (t && t.latitude && t.longitude) return !0;
                t = this.buildErrorConfig(o, a + " location参数格式有误");
                return e.fail(t), e.complete(t), !1;
            },
            buildErrorConfig: function(e, t) {
                return {
                    status: e,
                    message: t
                };
            },
            handleData: function(e, t, r) {
                if ("search" == r) {
                    for (var i = t.data, s = [], n = 0; n < i.length; n++) s.push({
                        id: i[n].id || null,
                        title: i[n].title || null,
                        latitude: i[n].location && i[n].location.lat || null,
                        longitude: i[n].location && i[n].location.lng || null,
                        address: i[n].address || null,
                        category: i[n].category || null,
                        tel: i[n].tel || null,
                        adcode: i[n].ad_info && i[n].ad_info.adcode || null,
                        city: i[n].ad_info && i[n].ad_info.city || null,
                        district: i[n].ad_info && i[n].ad_info.district || null,
                        province: i[n].ad_info && i[n].ad_info.province || null
                    });
                    e.success(t, {
                        searchResult: i,
                        searchSimplify: s
                    });
                } else if ("suggest" == r) {
                    for (var o = t.data, a = [], n = 0; n < o.length; n++) a.push({
                        adcode: o[n].adcode || null,
                        address: o[n].address || null,
                        category: o[n].category || null,
                        city: o[n].city || null,
                        district: o[n].district || null,
                        id: o[n].id || null,
                        latitude: o[n].location && o[n].location.lat || null,
                        longitude: o[n].location && o[n].location.lng || null,
                        province: o[n].province || null,
                        title: o[n].title || null,
                        type: o[n].type || null
                    });
                    e.success(t, {
                        suggestResult: o,
                        suggestSimplify: a
                    });
                } else if ("reverseGeocoder" == r) {
                    var l = t.result, c = {
                        address: l.address || null,
                        latitude: l.location && l.location.lat || null,
                        longitude: l.location && l.location.lng || null,
                        adcode: l.ad_info && l.ad_info.adcode || null,
                        city: l.address_component && l.address_component.city || null,
                        district: l.address_component && l.address_component.district || null,
                        nation: l.address_component && l.address_component.nation || null,
                        province: l.address_component && l.address_component.province || null,
                        street: l.address_component && l.address_component.street || null,
                        street_number: l.address_component && l.address_component.street_number || null,
                        recommend: l.formatted_addresses && l.formatted_addresses.recommend || null,
                        rough: l.formatted_addresses && l.formatted_addresses.rough || null
                    };
                    if (l.pois) {
                        var u = l.pois, d = [];
                        for (n = 0; n < u.length; n++) d.push({
                            id: u[n].id || null,
                            title: u[n].title || null,
                            latitude: u[n].location && u[n].location.lat || null,
                            longitude: u[n].location && u[n].location.lng || null,
                            address: u[n].address || null,
                            category: u[n].category || null,
                            adcode: u[n].ad_info && u[n].ad_info.adcode || null,
                            city: u[n].ad_info && u[n].ad_info.city || null,
                            district: u[n].ad_info && u[n].ad_info.district || null,
                            province: u[n].ad_info && u[n].ad_info.province || null
                        });
                        e.success(t, {
                            reverseGeocoderResult: l,
                            reverseGeocoderSimplify: c,
                            pois: u,
                            poisSimplify: d
                        });
                    } else e.success(t, {
                        reverseGeocoderResult: l,
                        reverseGeocoderSimplify: c
                    });
                } else if ("geocoder" == r) {
                    var g = t.result, h = {
                        title: g.title || null,
                        latitude: g.location && g.location.lat || null,
                        longitude: g.location && g.location.lng || null,
                        adcode: g.ad_info && g.ad_info.adcode || null,
                        province: g.address_components && g.address_components.province || null,
                        city: g.address_components && g.address_components.city || null,
                        district: g.address_components && g.address_components.district || null,
                        street: g.address_components && g.address_components.street || null,
                        street_number: g.address_components && g.address_components.street_number || null,
                        level: g.level || null
                    };
                    e.success(t, {
                        geocoderResult: g,
                        geocoderSimplify: h
                    });
                } else if ("getCityList" == r) {
                    var g = t.result[0], h = t.result[1], f = t.result[2];
                    e.success(t, {
                        provinceResult: g,
                        cityResult: h,
                        districtResult: f
                    });
                } else if ("getDistrictByCityId" == r) {
                    f = t.result[0];
                    e.success(t, f);
                } else if ("calculateDistance" == r) {
                    var m = t.result.elements, p = [];
                    for (n = 0; n < m.length; n++) p.push(m[n].distance);
                    e.success(t, {
                        calculateDistanceResult: m,
                        distance: p
                    });
                } else "direction" == r ? (r = t.result.routes, e.success(t, r)) : e.success(t);
            },
            buildWxRequestConfig: function(r, e, t) {
                var i = this;
                return e.header = {
                    "content-type": "application/json"
                }, e.method = "GET", e.success = function(e) {
                    e = e.data;
                    0 === e.status ? i.handleData(r, e, t) : r.fail(e);
                }, e.fail = function(e) {
                    e.statusCode = u, r.fail(i.buildErrorConfig(u, e.errMsg));
                }, e.complete = function(e) {
                    switch (+e.statusCode) {
                      case u:
                        r.complete(i.buildErrorConfig(u, e.errMsg));
                        break;

                      case d:
                        var t = e.data;
                        0 === t.status ? r.complete(t) : r.complete(i.buildErrorConfig(t.status, t.message));
                        break;

                      default:
                        r.complete(i.buildErrorConfig(l, c));
                    }
                }, e;
            },
            locationProcess: function(t, e, r, i) {
                var s = this;
                r = r || function(e) {
                    e.statusCode = u, t.fail(s.buildErrorConfig(u, e.errMsg));
                }, i = i || function(e) {
                    e.statusCode == u && t.complete(s.buildErrorConfig(u, e.errMsg));
                }, t.location ? s.checkLocation(t) && e(y.getLocationParam(t.location)) : s.getWXLocation(e, r, i);
            }
        }, g = (i = _, (s = [ {
            key: "search",
            value: function(t) {
                var r, i, s, n, o;
                t = t || {}, y.polyfillParam(t), y.checkKeyword(t) && (r = {
                    keyword: t.keyword,
                    orderby: t.orderby || "_distance",
                    page_size: t.page_size || 10,
                    page_index: t.page_index || 1,
                    output: "json",
                    key: this.key
                }, t.address_format && (r.address_format = t.address_format), t.filter && (r.filter = t.filter), 
                i = t.distance || "1000", s = t.auto_extend || 1, o = n = null, t.region && (n = t.region), 
                t.rectangle && (o = t.rectangle), y.locationProcess(t, function(e) {
                    r.boundary = n && !o ? "region(" + n + "," + s + "," + e.latitude + "," + e.longitude + ")" : o && !n ? "rectangle(" + o + ")" : "nearby(" + e.latitude + "," + e.longitude + "," + i + "," + s + ")", 
                    t.sig && (r.sig = y.getSig(r, t.sig, "search")), wx.request(y.buildWxRequestConfig(t, {
                        url: "https://apis.map.qq.com/ws/place/v1/search",
                        data: r
                    }, "search"));
                }));
            }
        }, {
            key: "getSuggestion",
            value: function(t) {
                var r;
                t = t || {}, y.polyfillParam(t), y.checkKeyword(t) && (r = {
                    keyword: t.keyword,
                    region: t.region || "全国",
                    region_fix: t.region_fix || 0,
                    policy: t.policy || 0,
                    page_size: t.page_size || 10,
                    page_index: t.page_index || 1,
                    get_subpois: t.get_subpois || 0,
                    output: "json",
                    key: this.key
                }, t.address_format && (r.address_format = t.address_format), t.filter && (r.filter = t.filter), 
                t.location ? y.locationProcess(t, function(e) {
                    r.location = e.latitude + "," + e.longitude, t.sig && (r.sig = y.getSig(r, t.sig, "suggest")), 
                    wx.request(y.buildWxRequestConfig(t, {
                        url: h,
                        data: r
                    }, "suggest"));
                }) : (t.sig && (r.sig = y.getSig(r, t.sig, "suggest")), wx.request(y.buildWxRequestConfig(t, {
                    url: h,
                    data: r
                }, "suggest"))));
            }
        }, {
            key: "reverseGeocoder",
            value: function(t) {
                t = t || {}, y.polyfillParam(t);
                var r = {
                    coord_type: t.coord_type || 5,
                    get_poi: t.get_poi || 0,
                    output: "json",
                    key: this.key
                };
                t.poi_options && (r.poi_options = t.poi_options);
                y.locationProcess(t, function(e) {
                    r.location = e.latitude + "," + e.longitude, t.sig && (r.sig = y.getSig(r, t.sig, "reverseGeocoder")), 
                    wx.request(y.buildWxRequestConfig(t, {
                        url: f,
                        data: r
                    }, "reverseGeocoder"));
                });
            }
        }, {
            key: "geocoder",
            value: function(e) {
                var t;
                e = e || {}, y.polyfillParam(e), y.checkParamKeyEmpty(e, "address") || (t = {
                    address: e.address,
                    output: "json",
                    key: this.key
                }, e.region && (t.region = e.region), e.sig && (t.sig = y.getSig(t, e.sig, "geocoder")), 
                wx.request(y.buildWxRequestConfig(e, {
                    url: f,
                    data: t
                }, "geocoder")));
            }
        }, {
            key: "getCityList",
            value: function(e) {
                e = e || {}, y.polyfillParam(e);
                var t = {
                    output: "json",
                    key: this.key
                };
                e.sig && (t.sig = y.getSig(t, e.sig, "getCityList")), wx.request(y.buildWxRequestConfig(e, {
                    url: "https://apis.map.qq.com/ws/district/v1/list",
                    data: t
                }, "getCityList"));
            }
        }, {
            key: "getDistrictByCityId",
            value: function(e) {
                var t;
                e = e || {}, y.polyfillParam(e), y.checkParamKeyEmpty(e, "id") || (t = {
                    id: e.id || "",
                    output: "json",
                    key: this.key
                }, e.sig && (t.sig = y.getSig(t, e.sig, "getDistrictByCityId")), wx.request(y.buildWxRequestConfig(e, {
                    url: "https://apis.map.qq.com/ws/district/v1/getchildren",
                    data: t
                }, "getDistrictByCityId")));
            }
        }, {
            key: "calculateDistance",
            value: function(o) {
                var a, e;
                o = o || {}, y.polyfillParam(o), y.checkParamKeyEmpty(o, "to") || (a = {
                    mode: o.mode || "walking",
                    to: y.location2query(o.to),
                    output: "json",
                    key: this.key
                }, o.from && (o.location = o.from), e = "straight" == a.mode ? function(e) {
                    for (var t = y.getEndLocation(a.to), r = {
                        message: "query ok",
                        result: {
                            elements: []
                        },
                        status: 0
                    }, i = 0; i < t.length; i++) r.result.elements.push({
                        distance: y.getDistance(e.latitude, e.longitude, t[i].lat, t[i].lng),
                        duration: 0,
                        from: {
                            lat: e.latitude,
                            lng: e.longitude
                        },
                        to: {
                            lat: t[i].lat,
                            lng: t[i].lng
                        }
                    });
                    for (var s = r.result.elements, n = [], i = 0; i < s.length; i++) n.push(s[i].distance);
                    return o.success(r, {
                        calculateResult: s,
                        distanceResult: n
                    });
                } : function(e) {
                    a.from = e.latitude + "," + e.longitude, o.sig && (a.sig = y.getSig(a, o.sig, "calculateDistance")), 
                    wx.request(y.buildWxRequestConfig(o, {
                        url: "https://apis.map.qq.com/ws/distance/v1/",
                        data: a
                    }, "calculateDistance"));
                }, y.locationProcess(o, e));
            }
        }, {
            key: "direction",
            value: function(t) {
                var r, i;
                t = t || {}, y.polyfillParam(t), y.checkParamKeyEmpty(t, "to") || (r = {
                    output: "json",
                    key: this.key
                }, "string" == typeof t.to ? r.to = t.to : r.to = t.to.latitude + "," + t.to.longitude, 
                i = null, t.mode = t.mode || m, i = "https://apis.map.qq.com/ws/direction/v1/" + t.mode, 
                t.from && (t.location = t.from), t.mode == m && (t.from_poi && (r.from_poi = t.from_poi), 
                t.heading && (r.heading = t.heading), t.speed && (r.speed = t.speed), t.accuracy && (r.accuracy = t.accuracy), 
                t.road_type && (r.road_type = t.road_type), t.to_poi && (r.to_poi = t.to_poi), t.from_track && (r.from_track = t.from_track), 
                t.waypoints && (r.waypoints = t.waypoints), t.policy && (r.policy = t.policy), t.plate_number && (r.plate_number = t.plate_number)), 
                t.mode == p && (t.departure_time && (r.departure_time = t.departure_time), t.policy && (r.policy = t.policy)), 
                y.locationProcess(t, function(e) {
                    r.from = e.latitude + "," + e.longitude, t.sig && (r.sig = y.getSig(r, t.sig, "direction", t.mode)), 
                    wx.request(y.buildWxRequestConfig(t, {
                        url: i,
                        data: r
                    }, "direction"));
                }));
            }
        } ]) && r(i.prototype, s), n && r(i, n), _);
        function _(e) {
            if (function(e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
            }(this, _), !e.key) throw Error("key值不能为空");
            this.key = e.key;
        }
        e.exports = g;
    },
    ca02: function(e, r) {
        !function() {
            Object.defineProperty(r, "__esModule", {
                value: !0
            });
            var e = r.DEFAULT_FOOD_LIST = [ "火锅", "粤菜", "沙县小吃", "蒸菜", "酸辣粉", "涮羊肉", "油泼面", "干拌面", "湘菜", "东北菜" ], t = (r.eatTextColor = [ "#F29B76", "#F39800", "#993E3D", "#FFD986", "#AD9158", "#B96C0C", "#D1D8A0", "#A6B888", "#F74021" ], 
            r.StorageKey = {
                FOOD_LIST: "FOOD_LIST"
            }, r.generateRandomFood = function() {
                return e[Math.floor(e.length * Math.random())];
            }, r.generateRandomName = function() {
                return t[Math.floor(t.length * Math.random())] + "*";
            }, [ "赵", "钱", "孙", "李", "周", "吴", "郑", "王", "冯", "陈", "褚", "卫", "蒋", "沈", "韩", "杨", "朱", "秦", "尤", "许", "何", "吕", "施", "张", "孔", "曹", "严", "华", "金", "魏", "陶", "姜", "戚", "谢", "邹", "喻", "柏", "水", "窦", "章", "云", "苏", "潘", "葛", "奚", "范", "彭", "郎", "鲁", "韦", "昌", "马", "苗", "凤", "花", "方", "俞", "任", "袁", "柳", "酆", "鲍", "史", "唐", "费", "廉", "岑", "薛", "雷", "贺", "倪", "汤", "滕", "殷", "罗", "毕", "郝", "邬", "安", "常", "乐", "于", "时", "傅", "皮", "卞", "齐", "康", "伍", "余", "元", "卜", "顾", "孟", "平", "黄", "和", "穆", "萧", "尹" ]);
        }();
    }
} ]);